home *** CD-ROM | disk | FTP | other *** search
/ Amiga Times / AmigaTimes.iso / demos / programme / StormC / Installa StormC < prev    next >
Encoding:
Text File  |  1998-10-06  |  12.1 KB  |  829 lines

  1. ; $VER: StormC-Demo V1.1 Install Version 1.06i (8.7.96)
  2.  
  3. ; Script di Installazione
  4.  
  5. ; (c) 1996 HAAGE & PARTNER Computer GmbH
  6. ; Traduzione in italiano di Reinhard Spisser
  7.  
  8.  
  9. (complete 0)
  10.  
  11.  
  12.  
  13. ; La versione e la data di compilazione di questa versione
  14.  
  15. (set stcpp-version "1.1")
  16.  
  17. (set stcpp-date "(17 Jul 96)")
  18.  
  19.  
  20.  
  21. ;====================================================================
  22.  
  23. ; Inizializzazioni
  24.  
  25.  
  26.  
  27.  
  28.  
  29. (set @default-dest "")
  30.  
  31.  
  32.  
  33. (set os-version (/ (getversion) 65536))
  34.  
  35. (set os-13 (< os-version 36))
  36.  
  37. (set os-20 (>= os-version 36))
  38.  
  39. (set os-21 (>= os-version 38))
  40.  
  41.  
  42.  
  43. (set totalmem (database "total-mem")) ; Questa funzione ci semplifica la vita
  44.  
  45.  
  46.  
  47. ; Il Percorso dei programmi usati
  48.  
  49.  
  50.  
  51. ;(set run-lha                "run RAM:Lhex x -a ")
  52.  
  53. ;(set run-free                "run C/StormFree")
  54.  
  55.  
  56.  
  57. ; Qui si trovano i vari file da copiare...
  58.  
  59.  
  60.  
  61. (set #binsource             (tackon (pathonly @icon) "StormSYS"))    ; I programmi eseguibili
  62.  
  63. (set #includesource         (tackon (pathonly @icon) "INCLUDE"))     ; Gli include
  64.  
  65. (set #envsource            (tackon (pathonly @icon) "ENV"))            ; Le Preferenze
  66.  
  67. (set #libsource            (tackon (pathonly @icon) "LIB"))            ; Le Librerie
  68.  
  69. (set #samplesource        (tackon (pathonly @icon) "Examples"))    ; Le sorgenti dei programmi dimostrativi
  70.  
  71. (set #manualsource        (tackon (pathonly @icon) "MANUAL"))        ; La documentazione
  72.  
  73. (set #toolssource       (tackon (pathonly @icon) "TOOLS"))        ; I tool
  74.  
  75. (set #flibsource        (tackon (pathonly @icon) "Fast-Ansi-Lib")) ; Hier steht die neue Ansi-lib
  76.  
  77. (set #muilibsource      (tackon (pathonly @icon) "Mui-Class-Lib")) ; Hier steht die Mui Klassen-Library
  78.  
  79. (set source-Liesmich     (tackon (pathonly @icon) "Leggimi"))        ; Il file LEGGIMI
  80.  
  81. (set source-ikon        (tackon (pathonly @icon) "StormCPP.info"))    ; L'icona del Programma
  82.  
  83. (set #wizlibsource      (tackon (pathonly @icon) "LIBS/Wizard.library")) ; Le nuove classi Boopsi
  84.  
  85.  
  86. ;(set !auswahlhilfe
  87.  
  88. ;    (cat "\Sul disco si trova già una versione precedente \n "
  89.  
  90. ;        "del file da installare. \n\n"
  91.  
  92. ;        "Selezionando \"Yes\", il file vecchio verrà sovrascritto,  "
  93.  
  94. ;        "con  \"No\" il file non verrà copiato\n"))
  95.  
  96.  
  97.  
  98. (set #prp-copy-samples
  99.  
  100.     "Copia di:\nEsempi C e C++...")
  101.  
  102. (set #hlp-copy-samples
  103.  
  104.     "Utilizzare il manuale e gli esempi per un avvio rapido con StormC")
  105.  
  106. (set #prp-copy-env
  107.  
  108.     "Copia di:\nIcone di default di StormC...")
  109.  
  110. (set #hlp-copy-env
  111.  
  112.     "Le icone sono utilizzate dal gestore progetti e dal editor")
  113.  
  114. (set #prp-copy-includes
  115.  
  116.     "Copia di:\nInclude C++...")
  117.  
  118.  
  119. (set #hlp-copy-includes
  120.  
  121.     "Gli include sono necessari per il compilatore")
  122.  
  123. (set #prp-copy-libs
  124.  
  125.     "Copia di:\nLibrerie del linker...")
  126.  
  127.  
  128. (set #hlp-copy-libs
  129.  
  130.     "Queste liberie vengono utilizzate dal linker")
  131.  
  132. (set #prp-copy-manual
  133.  
  134.     "Copia di:\nDocumentazione...")
  135.  
  136. (set #hlp-copy-manual
  137.  
  138.     "Questo è un file AmigaGuide per StormC")
  139.  
  140. (set #prp-copy-bin
  141.  
  142.     "Copia di:\nEseguibili di StormC...")
  143.  
  144. (set #hlp-copy-bin
  145.  
  146.     "Per la prima installazione di StormC \nè consigliabile copiare tutto!")
  147.  
  148. (set #prp-copy-tools
  149.  
  150.       "Copia di:\nScreentool...")
  151.  
  152. (set #hlp-copy-tools
  153.     "Questa è una Screenmanager-Commodity per StormC")
  154.  
  155. (set #prp-copy-lib
  156.     "Copia di:\nWizard.library...")
  157.  
  158. (set #hlp-copy-lib
  159.     "Questa è la libreria di classi Boopsi di StormWizard!")
  160.  
  161. (set #prp-copy-fastlib
  162.    "Copying the FAST-ANSI-Library")
  163.  
  164. (set #hlp-copy-fastlib
  165.    "With it you can generate fast ANSI-C programms.")
  166.  
  167. (set #prp-copy-muilib
  168.    "Copying the Mui Klassen-Library")
  169.  
  170. (set #hlp-copy-muilib
  171.    "The library makes it possible to program MUI with C++")
  172.  
  173. ; Le Dimensioni dei vari file
  174.  
  175. (set size-stormcpp            24000)
  176. (set size-stormc                432000)
  177. (set size-stormed                200000)
  178. (set size-stormshell              330000)
  179. (set size-stormrun            220000)
  180. (set size-stormasm            36000)
  181. (set size-stormpics            50000)
  182. (set size-stormlex            50000)
  183. (set size-libs                    350000)
  184. (set size-inlcudes            400000)
  185. (set size-demos                100000)
  186.  
  187.  
  188. (set size-komplett    ( + size-stormrun size-stormasm size-stormcpp size-stormc size-stormed size-stormshell size-stormpics size-stormlex size-libs size-inlcudes size-demos))
  189.  
  190.  
  191.  
  192. ; ----------------------------- Procedure ------------------------------
  193.  
  194.  
  195.  
  196. (Procedure Make_Folder
  197.  
  198.     (
  199.  
  200.     (set folder (tackon folder "StormC"))
  201.  
  202.     (if (= (exists folder) 0)
  203.  
  204.        (
  205.  
  206.        (makedir folder (infos))
  207.  
  208.        )
  209.  
  210.     ))
  211.  
  212. )
  213.  
  214.  
  215.  
  216. ;=====================================================================================
  217.  
  218. ; Beginn der Installation
  219.  
  220. ;=====================================================================================
  221.  
  222.  
  223.  
  224. ; Eine kleine Einleitung, gefolgt vom Startbild des Installers.
  225.  
  226.  
  227.  
  228. (set act-user-level @user-level)
  229.  
  230. (user 1)
  231.  
  232.  
  233.  
  234. (message (cat    "\nBenvenuti all'installazione di \n\n\"StormC demo "
  235.                      stcpp-version " del "stcpp-date "\"!\n\n"
  236.                     "Questo script copia su disco fisso tutti i file\n"
  237.                     "necessari per un corretto funzionamento\n"
  238.                     "di StormC.\n"))
  239.  
  240.  
  241.  
  242. (user act-user-level)
  243.  
  244. (welcome)
  245.  
  246.  
  247.  
  248. (complete 5)
  249.  
  250.  
  251.  
  252. (set act-user-level @user-level)
  253.  
  254. (user 1)
  255.  
  256.  
  257.  
  258.  
  259.  
  260. ;    Alte Version pruefen und entsprechende Warnung ausgeben! **************************************************************
  261.  
  262.  
  263.  
  264. (set folder "WORK:StormC")
  265.  
  266.  
  267.  
  268. (if (exists "StormC:" (noreq))
  269.     (
  270.         (message (cat    "\nSul disco si trova già una versione di StormC\n"
  271.                         "Selezionare la directory padre tramite \"Parent Drawer\"\n"
  272.                         "se si desidera aggiornare StormC!"))
  273.  
  274.     (set folder (getassign "STORMC"))
  275.     )
  276. )
  277.  
  278.  
  279.  
  280. (set cmpstr (getassign "STORMC"))
  281.  
  282.  
  283.  
  284. (user act-user-level)
  285.  
  286.  
  287.  
  288. (if (= @user-level 0)
  289.  
  290.     (
  291.  
  292.     (user 1)
  293.  
  294.     (message (cat    "La modalità ENTRY necessita di almeno \n5 MB spazio libero sul disco fisso\n."
  295.  
  296.                         "Selezionare una directory/volume per l'installazione di StormC"
  297.  
  298.                         "\n\n"
  299.  
  300.                         "Le altre impostazioni verranno effettuati dall'installazione "
  301.  
  302.                         "per adattarsi al tuo sistema."))))
  303.  
  304.  
  305.  
  306. (set ok 0)
  307.  
  308. (while (not ok)
  309.  
  310.     (set folder
  311.  
  312.         (askdir
  313.  
  314.             (prompt (cat "\n"
  315.  
  316.                              "Selezionare un percorso per l'installazione di StormC.\n"
  317.  
  318.                              "Verrà crato una directory StormC!"))
  319.  
  320.             (help (cat    "    Premendo 'Show drives' verrà visualizzato\n un elenco di tutti i i volumi disponibili.\n"
  321.  
  322.                             "Da questa lista selezionare uno dei nomi non colorati.\n "
  323.  
  324.                             "    Nomi tipici sono \"Work:\", \"HD0:\" oppure \"DH0:\"; "
  325.  
  326.                             "non utilizzare nomi come \"DF0:\", \"DF1:\", "
  327.  
  328.                             "\"DF2:\", \"DF3:\", \"RAD:\", \"RAM:\", \"System2.0:\", "
  329.  
  330.                             "\"WB_2.x:\", \"System3.0:\" oppure \"WB_3.x:\"!"
  331.  
  332.                             "\n\n"
  333.  
  334.                             "L'installazione di StormC non può essere effettuata direttamente\nin un volume.\n"
  335.  
  336.                             "Deve essere selezionata una directory, altrimenti verrà visualizzato un errore. "
  337.  
  338.                             "\n\n"
  339.  
  340.                             @askdir-help))
  341.  
  342.             (default folder)
  343.  
  344.             (disk)
  345.  
  346.         )
  347.  
  348.     )
  349.  
  350.  
  351.  
  352.    (Make_Folder)    ; // Crea automaticamente la directory!
  353.  
  354.  
  355.  
  356.     ; Ist der Dateiname leer oder endet mit einem ':' oder existiert unter
  357.  
  358.     ; diesem Namen kein Verzeichnis, wird eine Fehlermeldung angezeigt; andernfalls
  359.  
  360.     ; kann die Auswahl-Schleife beendet werden.
  361.  
  362.     (if (or (or (or (<= (strlen folder) 0) (= (substr folder (- (strlen folder) 1) 1) ":")) (= (exists folder (noreq)) 0)) (= (getdiskspace folder) -1))
  363.  
  364.         (message (cat    "\n \"" folder "\" non è una "
  365.  
  366.                             "directory valida !\n\n"
  367.  
  368.                             "Utilizzare 'Show drives' per visualizzare un elenco di tutti i volumi disponibili! "
  369.  
  370.                             " Da questa lista, selezionare solo gli elementi non colorati!."
  371.  
  372.                             "\n"
  373.  
  374.                             "Utilizzare \"New drawer...\" per creare una nuova directory nel volume corrente"))
  375.  
  376.         ;else
  377.  
  378.         (
  379.  
  380.             (set freediskspace (getdiskspace folder))    ; Der freie Speicher auf diesem Medium
  381.  
  382.  
  383.  
  384.             (if (< freediskspace size-komplett)
  385.  
  386.                 (
  387.  
  388.                 (user 1)
  389.  
  390.                 (message (cat    "\nIl volume selezionato non ha sufficiente\n"
  391.                 "spazio libero per l'installazione completa di StormC. "
  392.  
  393.                                             "\n\n"
  394.  
  395.                                             "Spazio libero: " freediskspace "!\n"
  396.  
  397.                                             "Spazie richiesto " size-komplett "!\n\n"
  398.  
  399.                                             "Selezionare un altro volume !"))
  400.  
  401.                 )
  402.  
  403.             ;else
  404.  
  405.             (set ok 1)
  406.  
  407.             )
  408.  
  409.         )
  410.  
  411.     )
  412.  
  413. )
  414.  
  415.  
  416.  
  417. (makeassign "STORMC")
  418.  
  419.  
  420.  
  421. (user act-user-level)
  422.  
  423.  
  424.  
  425. (set @default-dest folder)    ; This Assign is very important!
  426.  
  427.  
  428.  
  429. (set destbin    (tackon folder "StormSYS"))
  430.  
  431. (if                                          ; Create Directory for Compiler
  432.  
  433.     (= (exists destbin) 0)
  434.  
  435.     (makedir destbin (infos))
  436.  
  437. )
  438.  
  439.  
  440.  
  441. (set destdemo    (tackon folder "Examples"))
  442.  
  443. (if                                          ; Create Directory for Demos
  444.  
  445.     (= (exists destdemo) 0)
  446.  
  447.     (makedir destdemo (infos))
  448.  
  449. )
  450.  
  451. (set destinclude (tackon folder "Include"))
  452.  
  453. (if                                          ; Create Directory for Includes
  454.  
  455.     (= (exists destinclude) 0)
  456.  
  457.     (makedir destinclude)
  458.  
  459. )
  460.  
  461.  
  462.  
  463. (set destlib    (tackon folder "Lib"))
  464.  
  465. (if                                          ; Create Directory for Libraries
  466.  
  467.     (= (exists destlib) 0)
  468.  
  469.     (makedir destlib)
  470.  
  471. )
  472.  
  473.  
  474.  
  475. (set destmanual    (tackon folder "Manual"))
  476.  
  477. (if                                          ; Create Directory for Documentation
  478.  
  479.     (= (exists destmanual) 0)
  480.  
  481.     (makedir destmanual (infos))
  482.  
  483. )
  484.  
  485. (set desttools    (tackon folder "Tools"))
  486.  
  487. (if                                          ; Create Directory for Tools
  488.  
  489.     (= (exists desttools) 0)
  490.  
  491.     (makedir desttools (infos))
  492.  
  493. )
  494.  
  495. (set fansilib    (tackon folder "Fast-ANSI-Lib"))
  496.  
  497. (if                                          ;Fastansilib-Verzeichnis erzeugen
  498.     (= (exists fansilib) 0)
  499.     (makedir fansilib (infos))
  500. )
  501.  
  502. (set muilib    (tackon folder "MUI-Class-Lib"))
  503.  
  504. (if                                          ;Muilib-Verzeichnis erzeugen
  505.     (= (exists muilib) 0)
  506.     (makedir muilib (infos))
  507. )
  508.  
  509. (complete 5)
  510.  
  511.  
  512.  
  513. ; Copy Readme to Harddisk!
  514.  
  515.  
  516.  
  517. (copyfiles
  518.  
  519.     (source source-Liesmich)
  520.  
  521.     (dest folder)
  522.  
  523.     (infos)
  524.  
  525. )
  526.  
  527.  
  528.  
  529. (complete 8)
  530.  
  531.  
  532.  
  533. (set morerunpath "run C/More Leggimi")
  534.  
  535.  
  536.  
  537. (run morerunpath)    ; load Leggimi
  538.  
  539.  
  540.  
  541. (complete 10)
  542.  
  543.  
  544.  
  545. (set destinfo    (tackon folder "StormCPP.info"))
  546.  
  547. (if                                          ; Generate Project-Icon
  548.     (= (exists destinfo) 0)
  549.     (
  550.     (copyfiles
  551.         (source source-ikon)
  552.         (dest folder)
  553.     ))
  554. )
  555.  
  556.  
  557.  
  558. (complete 15)
  559.  
  560.  
  561. (copyfiles                                            ; copy Examples
  562.  
  563.     (prompt #prp-copy-samples)
  564.  
  565.     (help #hlp-copy-samples)
  566.  
  567.     (source #samplesource)
  568.  
  569.     (dest destdemo)
  570.  
  571.     (all)
  572.  
  573.     (confirm)
  574.  
  575. )
  576.  
  577.  
  578.  
  579. (complete 20)
  580.  
  581.  
  582.  
  583. (copyfiles                                            ; copy Settings
  584.  
  585.     (prompt #prp-copy-env)
  586.  
  587.     (help #hlp-copy-env)
  588.  
  589.     (source #envsource)
  590.  
  591.     (dest "ENVARC:")
  592.  
  593.     (all)
  594.  
  595.     (confirm)
  596.  
  597. )
  598.  
  599.  
  600.  
  601. (complete 22)
  602.  
  603.  
  604.  
  605. (copyfiles                                            ; copy Settings
  606.  
  607.     (prompt #prp-copy-env)
  608.  
  609.     (help #hlp-copy-env)
  610.  
  611.     (source #envsource)
  612.  
  613.     (dest "ENV:")
  614.  
  615.     (all)
  616.  
  617.     (confirm)
  618.  
  619. )
  620.  
  621.  
  622.  
  623. (complete 25)
  624.  
  625.  
  626.  
  627. (copyfiles                                            ; copy compiler
  628.  
  629.     (prompt #prp-copy-bin)
  630.  
  631.     (help #hlp-copy-bin)
  632.  
  633.     (source #binsource)
  634.  
  635.     (dest destbin)
  636.  
  637.     (all)
  638.  
  639.     (confirm)
  640.  
  641. )
  642.  
  643.  
  644.  
  645. (complete 40)
  646.  
  647.  
  648.  
  649. (copyfiles                                            ; copy includes
  650.  
  651.     (prompt #prp-copy-includes)
  652.  
  653.     (help #hlp-copy-includes)
  654.  
  655.     (source #includesource)
  656.  
  657.     (dest destinclude)
  658.  
  659.     (all)
  660.  
  661.     (confirm)
  662.  
  663. )
  664.  
  665.  
  666.  
  667. (complete 60)
  668.  
  669.  
  670.  
  671. (copyfiles                                            ; copy libs
  672.  
  673.     (prompt #prp-copy-libs)
  674.  
  675.     (help #hlp-copy-libs)
  676.  
  677.     (source #libsource)
  678.  
  679.     (dest destlib)
  680.  
  681.     (all)
  682.  
  683.     (confirm)
  684.  
  685. )
  686.  
  687.  
  688.  
  689. (complete 80)
  690.  
  691.  
  692.  
  693. (copyfiles                                            ; copy manual
  694.  
  695.     (prompt #prp-copy-manual)
  696.  
  697.     (help #hlp-copy-manual)
  698.  
  699.     (source #manualsource)
  700.  
  701.     (dest destmanual)
  702.  
  703.     (all)
  704.  
  705.     (confirm)
  706.  
  707. )
  708.  
  709. (complete 90)
  710.  
  711.  
  712.  
  713. (copyfiles                                            ; copy tools
  714.  
  715.     (prompt #prp-copy-tools)
  716.  
  717.     (help #hlp-copy-tools)
  718.  
  719.     (source #toolssource)
  720.  
  721.     (dest desttools)
  722.  
  723.     (all)
  724.  
  725.     (confirm)
  726.  
  727. )
  728.  
  729. (complete 91)
  730.  
  731.  
  732. (copyfiles                                            ; Fastlib kopieren
  733.     (prompt #prp-copy-fastlib)
  734.     (help #hlp-copy-fastlib)
  735.     (source #flibsource)
  736.     (dest fansilib)
  737.     (all)
  738.     (confirm)
  739. )
  740.  
  741. (complete 92)
  742.  
  743. (copyfiles                                            ; Muilib kopieren
  744.     (prompt #prp-copy-muilib)
  745.     (help #hlp-copy-muilib)
  746.     (source #muilibsource)
  747.     (dest muilib)
  748.     (all)
  749.     (confirm)
  750. )
  751.  
  752. (complete 93)
  753.  
  754. (copylib                                            ; Copy Wizard.Library
  755.     (prompt #prp-copy-lib)
  756.     (help #hlp-copy-lib)
  757.     (source #wizlibsource)
  758.     (dest "LIBS:")
  759.     (confirm)
  760. )
  761.  
  762.  
  763. (complete 95)
  764.  
  765.  
  766.  
  767. ; ------- CHANGE STARTUP
  768.  
  769.  
  770.  
  771. (set command1 (cat  "ASSIGN STORMC: " folder ""))
  772.  
  773.  
  774.  
  775. (set command1.txt
  776.  
  777.     (cat
  778.  
  779.          "\n\n\nSono necessarie alcune aggiunte alla User-Startup per permettere un "
  780.  
  781.       "corretto funzionamento di StormC.\n\n"
  782.  
  783.          command1
  784.  
  785.     )
  786.  
  787. )
  788.  
  789.  
  790.  
  791. (startup "StormC"
  792.  
  793.     (prompt command1.txt)
  794.  
  795.     (help #help-startup)
  796.  
  797.     (command command1)
  798.  
  799. )
  800.  
  801.  
  802.  
  803. (makeassign "STORMC")
  804.  
  805. (makeassign "STORMC" folder)
  806.  
  807. (delete "RAM:LHex")
  808.  
  809. (complete 100)
  810.  
  811.  
  812.  
  813. ; ------- FINISHED
  814.  
  815.  
  816.  
  817. (message (cat
  818.  
  819.     "\nInstallazione di StormC completata.\n"
  820.  
  821.    "Se le linee:\n" command1 "\nnon sono inserite nella Startup-Sequence o "
  822.  
  823.    "User-Startup, il comando deve essere inserito a mano!\n\n"
  824.  
  825.    "\n\nBuon divertimento con StormC! ... ")
  826.  
  827. )
  828.  
  829.